#ifndef __WaterWindow_h_
#define __WaterWindow_h_

#include <OISEvents.h>
#include <OISInputManager.h>
#include <OISKeyboard.h>
#include <OISMouse.h>

#include <OgreRoot.h>
#include <SdkTrays.h>

using namespace OgreBites;

class WaterWindow
{
public:
	enum eWaterParams {
		               Param_MaxParticles, 
					   Param_KernelRadiusMultiplier,
					   Param_RestParticlesPerMetre,
					   Param_PacketSizeMultiplier,
					   Param_MotionLimitMultiplier,
					   Param_CollisionDistanceMultiplier,
					   Param_Stiffness,
					   Param_Viscosity,
					   Param_RestDensity,
					   Param_StartHeight,
					   Param_ParticleLifetime,
					   Param_Rate,
					   Param_FluidSpeed,
					   Param_ReplusionCoefficient,
					   Param_DimensionX,
					   Param_DimensionY,
					   Param_ParticleSize
					  };

public:
	WaterWindow(SdkTrayManager *mTrayMgr);
	~WaterWindow(void);

	void show(void);
	void hide(void);
	eWaterParams getSelection(void);

public:
	Label* mParamValueLabel;
private:
	SdkTrayManager *mTrayMgr;
	Label* windowCaption;
	SelectMenu* mWaterMenu;
	Ogre::StringVector menuItems;
	Button *mUpButton;
	Button *mDownButton;
};

#endif // #ifndef __WaterWindow_h_
